package com.longrise.android.byjk.plugins.course.coursedetail;

import com.longrise.common.base.BasePresenter;
import com.longrise.common.base.BaseView;
import com.longrise.android.byjk.model.CourseTrainDirBean;

/**
 * Created by callxkj on 2017/9/25.
 * 课程详情类
 */

public interface CourseDetailContract {
     interface CourseView extends BaseView {

         void showMsg(CourseTrainDirBean.Result resultBean);
         /**
          * @param cert      培训证书
          * @param recordTab 记录表
          *                  设置执业证书信息
          */
         void setCertInfor(boolean cert, boolean recordTab);

         /**
          * 设置购买信息
          *
          * @param buy        是否需要购买
          * @param buyText    购买按钮的text
          * @param delay      是否可以延期
          * @param totalState 课程总状态
          * @param stateText  课程总状态text
          */
         void setBuyInfor(boolean buy, String buyText, boolean delay, boolean totalState, String stateText);

         /**
          * 获取课程id
          */
         String getCourseId();

         /**
          * 课程图片
          */
         void loadCoursePic(String picUrl);

         /**
          * 接口请求出错
          */
         void onError(String msg);

         /**
          * 延期，最新版本已取消
          */
         void showDelaySuccessDialog();

         /**
          * 评论显示状态
          */
         void setCommentVisiableState(boolean commentVisiableState);

         /**
          * 过期时间
          */
         void setExpiretime(String date);

         /**
          * 如果点击按钮需要请求网络在进入新的界面，请求响应为返回之前应该为不可点击
          */
         void setEnable(boolean enable);

         void jumpToExercises();
     }


     abstract class Presenter extends BasePresenter<CourseView>{
         public abstract  void  initData(String courseId);
         public abstract  void  refreshData();
         public abstract  void clickKhlxt();
     }

}
